
6. 网卡Qos优先级标记功能测试
1. 通过交换机上抓包可以看到报文对应的DSCP值为0。
分别进入server端和client端的device 0侧：
ssh HwHiAiUser@198.168.1.199
输入TMOUT=0 防止超时；
server端执行：+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
ib_send_bw -d hns_0 -n 500 -s 1024 --tclass=0 -p 12345 -x 3 -q 1
client端执行：
ib_send_bw -d hns_0 155.0.0.10 -n 500 -s 1024 --tclass=0 -p 12345 -x 3 -q 1
进入交换机进行抓包操作；同样可以复用之前的交换机规则，只需要重新创建文件即可，如下：
配置抓包端口：
packet capture rule 1 filter acl 1 inteface 端口号
创建文件
packet capture file flash:/d.cap buffer-size 20 packet-num 1500
进行抓包：
packet capture start
查看抓包情况：
show packet capture status
将保存的文件信息传输到本地进行查看：
在windows系统下，win+r输入cmd进入终端界面，执行以下命令连接交换机，（首先开启tcpserver enable）
ftp 交换机的ip
输入交换机的用户名和密码，即可进入交换机；
终端输入bin来设置读取格式；
再执行：get d.cap 保存到本地；
最后使用wireshark工具打开该文件进行查看报文信息；



2. 通过交换机上抓包可以看到报文对应的DSCP值为7。
server1端：输入
ib_write_bw -d hns_0 -n 500 -s 1024 --tclass=31 -p 12345 -x 3 -q 1
server2端：(红色部分为发送server端device地址)
ib_write_bw -d hns_0 155.0.0.10 -n 500 -s 1024 --tclass=31 -p 12345 -x 3 -q 1
进入交换机进行抓包操作；同样可以复用之前的交换机规则，只需要重新创建文件即可，如下：
packet capture file flash:/e.cap buffer-size 20 packet-num 1500
进行抓包：
packet capture start
查看抓包情况：
show packet capture status
将保存的文件信息传输到本地进行查看：
在windows系统下，win+r输入cmd进入终端界面，执行以下命令连接交换机， 
ftp 交换机的ip
输入交换机的用户名和密码，即可进入交换机；
终端输入bin来设置读取格式；
再执行：get e.cap 保存到本地；
最后使用wireshark工具打开该文件进行查看报文信息；



3. 通过交换机上抓包可以看到报文对应的DSCP值为15。
server端执行
ib_read_bw -d hns_0 -n 500 -s 1024 --tclass=63 -p 12345 -x 3 -q 1
client端：
ib_read_bw -d hns_0 155.0.0.10 -n 500 -s 1024 --tclass=63 -p 12345 -x 3 -q 1
进入交换机进行抓包操作；同样可以复用之前的交换机规则，只需要重新创建文件即可(名称修改不相同即可)，如下：
packet capture file flash:/x.cap buffer-size 20 packet-num 1500	
进行抓包：
packet capture start
查看抓包情况：
show packet capture status
将保存的文件信息传输到本地进行查看：
在windows系统下，win+r输入cmd进入终端界面，执行以下命令连接交换机， 
ftp 交换机的ip
输入交换机的用户名和密码，即可进入交换机；
终端输入bin来设置读取格式；
再执行：get x.cap 保存到本地；
最后使用wireshark工具打开该文件进行查看报文信息；



7. 网卡PFC基本功能测试
1. 交换机端口上使能PFC并设置好水线。
分别进入server1 2 3服务器的device 1中：
ssh HwHiAiUser@192.168.1.198
密码：Huawei2012#
输入：TMOUT=0防止超时
关闭dcqcn功能
三台服务器均需要执行此命令在host侧：
hccn_tool -i 1 -dcqcn -g status
hccn_tool -i 1 -dcqcn -s enable 0 alg_mode 0
使能pfc
hccn_tool -i 1 –pfc –s bitmap 1,0,0,0,0,0,0,0
进入交换机中配置PFC水线：
输入enable设置权限
输入密码：Hkzy@9000
进入config模式：
	config
兼容性队列修改：
qos-queue compatible enable
使能PFC
priority-flow-control nodrop 0-7 on
在host侧查看device的端口号，
hccn_tool –i 0 –lldp –g 



进入交换机的端口：
inteface HundredGigabitEthernet 1/9 回车
设置需要端口的PFC水线：
mls qos trust dscp
mmu xoff-threshold pg 0 set 25
mmu xon-threshold-offset pg 0 set 12
三台server的device 1端口均需要设置水线：
保存设置生效：
进入config模式：
queueing wred
输入end：
执行wr进行保存：
进入root用户：
echo $$ > /sys/fs/cgroup/cpuset/tasks 
执行邦核操作，防止cpu资源占用引起带宽问题。
查询是否有丢包和pfc
hccn_tool –I 1 –stat –g |grep pfc
2. 测试RDMA Send单QP通信功能，以Server-1作为Server，Server-2和Server-3作为Client，分别执行命令如下：
server1端执行：（下面的Ip地址为server端device的ip地址，hccn_tool工具设置的ip）
taskset -c 0 ib_send_bw -d hns_0 -s 65536 -p 12346 -x 3  --run_infinitely --report_gbits  -F &  
taskset -c 1 ib_send_bw -d hns_0 -s 65536 -p 12345  -x 3  --run_infinitely --report_gbits  -F &
client1:
 ib_send_bw -d hns_0 155.0.0.11 -s 65536 -p 12346 -x 3 --run_infinitely --report_gbits -F &
client2:
 ib_send_bw -d hns_0 155.0.0.11 -s 65536 -p 12345 -x 3 --run_infinitely --report_gbits -F &
查看回显带宽状态；

3. 测试RDMA Write单QP通信功能，以Server-1作为Server，Server-2和Server-3作为Client，分别执行命令如下：
server端：
taskset -c 0 ib_write_bw -d hns_0 -s 65536 -p 12346 -x 3 --run_infinitely --report_gbits  -F &  
taskset -c 1 ib_write_bw -d hns_0 -s 65536 -p 12345 -x 3 --run_infinitely --report_gbits  -F &

client1:
 ib_write_bw -d hns_0 155.0.0.11 -s 65536  -p 12346 -x 3 --run_infinitely --report_gbits -F &
client2:
 ib_write_bw -d hns_0 155.0.0.11 -s 65536  -p 12345 -x 3 --run_infinitely --report_gbits -F &
查看回显状态：

4测试RDMA Read单QP功能，以Server-1作为Client，Server-2和Server-3作为Server，分别执行命令如下:
server1端：
taskset -c 0 ib_read_bw -d hns_0 155.0.0.21 -s 65536  -p 12345  -x 3 --run_infinitely --report_gbits -F & 
taskset -c 1 ib_read_bw -d hns_0 155.0.0.31 -s 65536  -p 12346  -x 3 --run_infinitely --report_gbits -F &

server2:
ib_read_bw -d hns_0 -s 65536  -p 12345  -x 3 --run_infinitely --report_gbits -F & 
server3:
 ib_read_bw -d hns_0 -s 65536  -p 12346  -x 3 --run_infinitely --report_gbits -F &
查看带宽状态：




8 网卡DCQCN 基本功能测试
1.交换机端口上配置ECN并设置好ECN水线，同时，使能PFC并设置好水线；
首先打开DCQCN配置device参数：
在server1 ,server2,server3上的host侧分别执行如下步骤：
hccn_tool -i 1 -dcqcn -s enable 1 alg_mode 0
hccn_tool -i 1 -dcqcn -s alg_mode 0 tmp 8 max_speed 100000 g_shift 15 al 4 alp 64 ai 10000 tkp 6
设置ECN水线，
登录 到交换机中
输入enable切换权限
进入config模式
输入config回车
进入端口模式
inteface H 1/9(端口号以实际情况修改)回车
在当前显示界面依次执行如下命令设置水线：(每一个需要的端口均配置)
qos queue 0 ecn
wrr-queue random-detect min-threshold cell 0 1000 1000
wrr-queue random-detect max-threshold cell 0 5000 5000
wrr-queue random-detect probability 0 20 20
以及PFC
mls qos trust dscp
mmu xoff-threshold pg 0 set 25
mmu xon-threshold-offset pg 0 set 12
进入config模式
输入queueing wred回车
输入end回车
输入wr回车保存修改配置
2	测试RDMA Send单QP通信功能，以Server-1作为Server，Server-2和Server-3作为Client，分别执行命令如下：
分别进入三台server的device 1侧的root用户：
echo $$ > /sys/fs/cgroup/cpuset/tasks 
执行命令如下：
server端：
taskset -c 0 ib_send_bw -d hns_0 -s 4096  -p 12345 -x 3 --run_infinitely --report_gbits -F &
taskset -c 1 ib_send_bw -d hns_0 -s 4096  -p 12346 -x 3 --run_infinitely --report_gbits -F &

client1端：
 ib_send_bw -d hns_0 -s 4096  -p 12345  -x 3 --run_infinitely --report_gbits  155.0.0.11 -F &

client2端：
ib_send_bw -d hns_0 -s 4096  -p 12346  -x 3 --run_infinitely --report_gbits 155.0.0.11 -F &

观察回显带宽信息：
查看概率性CNP报文命令：
在server端的host侧执行如下命令：
hccn_tool -i 1 -stat -g |grep cnp
3	测试RDMA Write单QP通信功能，以Server-1作为Server，Server-2和Server-3作为Client，分别执行命令如下：
server端：11
taskset -c 0 ib_write_bw -d hns_0 -s 4096  -p 12345  -x 3 - -run_infinitely --report_gbits  -F & 
taskset -c 1 ib_write_bw -d hns_0 -s 4096  -p 12346  -x 3  --run_infinitely --report_gbits -F &
client1端：21
ib_write_bw -d hns_0 -s 4096  -p 12345  -x 3  --run_infinitely --report_gbits  155.0.0.11 -F &
client2端：31
ib_write_bw -d hns_0 -s 4096  -p 12346  -x 3  --run_infinitely --report_gbits  155.0.0.11 -F &
观察带宽回显状态，以及是否有概率性CNP报文出现
hccn_tool -i 1 -stat -g |grep cnp
4测试RDMA Read单QP功能，以Server-1作为Client，Server-2和Server-3作为Server，分别执行命令如下:
server2（155.0.0.21）
 ib_read_bw -d hns_0 -s 4096  -p 12345  -x 3  --run_infinitely --report_gbits -F &

server3: （155.0.0.31）
 ib_read_bw -d hns_0 -s 4096  -p 12346  -x 3  --run_infinitely --report_gbits -F &

server1:(发送端的ip地址为接收端的device ip)
taskset -c 0 ib_read_bw -d hns_0 -s 4096 -p 12345  -x 3 --run_infinitely --report_gbits 155.0.0.21 -F & 
taskset -c 1 ib_read_bw -d hns_0 -s 4096 -p 12346  -x 3 --run_infinitely --report_gbits 155.0.0.31 -F &

查看端口回显状态带宽与CNP报文；




9. RC连接模式支持测试
1测试RDMA write的RC模式通信功能，以Server-1作为Server，Server-2作为Client，
进入服务器host侧：
Server:
执行命令：hccn_tool -i 0 -roce_test ib_write_bw -s 512 -n 1000  -tcp
Client: 
hccn_tool -i 0 -roce_test ib_write_bw -s 512 -n 1000  address 155.0.0.10  -tcp
2 测试RDMA send的RC模式通信功能，以Server-1作为Server，Server-2作为Client，
server端执行： 
hccn_tool -i 0 -roce_test ib_send_bw -s 64 -n 500 -tcp
client端执行：
hccn_tool -i 0 -roce_test ib_send_bw -s 64 -n 500  address 155.0.0.10 -tcp
3测试RDMA read的RC模式通信功能，以Server-1作为Server，Server-2作为Client，分别执行命令如下：
Server:端
hccn_tool -i 0 -roce_test ib_read_bw -s 512 -n 1000 -tcp  
Client:端
hccn_tool -i 0 -roce_test ib_read_bw -s 512 -n 1000  address 155.0.0.10 -tcp








